DNS is a protocol within a set of standards relating to how computers exchange data on the Internet and on many private networks. The set of standards is known as the TCP/IP protocol suite. A purpose of DNS is to transform a text-based domain name (for example, “www.cnn.com”) into an Internet Protocol (IP) address (for example, 122.4.25.83) that computers use to identify each other on the network.
A DNS client executing on a client device is responsible for sending a DNS resolution request that ultimately leads to a full resolution (translation) of a resource sought, for example, translation of a domain name into a set of IP address(es). After an IP address is identified for a domain name, that IP address may be used for a certain period of time without requiring the DNS client to issue another DNS resolution request to resolve that domain name. However, in many situations, that period of time in which a resolution is valid or “alive” (referred to as “time to live” or TTL) is a minute or less. As a result the DNS client must issue another DNS resolution request when an application requests the IP address at a time more than a minute later. The TTL for an IP address may be established by the entity that controls the hostname, such as an authoritative server. The TTL may be relatively small to allow for more effective load balancing among multiple servers that each provide a particular service but have different IP addresses.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.